Display control apparatus, control method, computer-readable medium, and producing method

ABSTRACT

A display control apparatus comprising at least one memory and at least one processor which function as: a detection unit configured to detect characteristic points of a product that a user is to produce, from a reality image; an orientation adjustment unit configured to adjust orientation of a model so as to match with the detected characteristic points; and a control unit configured to display an image generated by superimposing the model, of which orientation has been adjusted, on the reality image.

BACKGROUND OF THE INVENTION Field of the Invention

The present disclosure relates to a display control apparatus, a controlmethod, a computer-readable medium, and a producing method.

Description of the Related Art

In recent years, techniques to provide user experiences in anenvironment having both reality and virtual reality, such as augmentedreality (AR) and mixed reality (MR), have been advancing.

For example, unprecedented user experiences can be provided bysuperimposing a virtual object onto an image captured by a smartphone,or capturing a movement of the user using a head mount display (HMD)having various sensors, and displaying the movement synchronizing withthe movement in a mixed reality.

AR and MR are becoming common at the personal level, and are beingutilized not only in daily life and also in various learning andproduction environments. For example, in U.S. Patent ApplicationPublication No. 2020/0363931, production is supported by superimposingand displaying a model on a screen of a smartphone when an illustrationis drawn.

In the case of U.S. Patent Application Publication No. 2020/0363931, adrawing region (e.g. edge of paper) of a captured image is detected, anda model image, which is set in advance, is superimposed and displayed soas to follow the drawing in the drawing region. By detecting the drawingregion, extra work, such as writing positioning markers, is unnecessary,which is advantageous.

However, since characteristic points are detected on a two-dimensionalproduction region, if the sight of the production region is lost due toa change in the work environment or the like, a superimposed display maynot be performed as expected.

SUMMARY OF THE INVENTION

It is an object of the present disclosure to provide a technique toeffectively support production in a reality space.

The first aspect of the present disclosure is a display controlapparatus comprising at least one memory and at least one processorwhich function as:

a detection unit configured to detect characteristic points of a productthat a user is to produce, from a reality image;

an orientation adjustment unit configured to adjust orientation of amodel so as to match with the detected characteristic points; and

a control unit configured to display an image generated by superimposingthe model, of which orientation has been adjusted, on the reality image.

The second aspect of the present disclosure is 1 control methodperformed by a computer, comprising:

a characteristic point detection step of detecting characteristic pointsof a product that a user is to produce, from a reality image;

an orientation adjustment step of adjusting orientation of a model so asto match with the detected characteristic points; and

a display screen generation step of generating an image by superimposingthe model, of which orientation has been adjusted, on the reality image.

Further features of the present invention will become apparent from thefollowing description of exemplary embodiments with reference to theattached drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a diagram depicting an example of a hardware configuration ofa production support system;

FIG. 2 is a diagram depicting an example of a software logicconfiguration of the production support system;

FIG, 3 is an example of a table of user data;

FIG. 4 is an example of a table of model data;

FIG. .5 is an example of a table of model candidates;

FIG. 6 is a diagram depicting an overview of a production support systemaccording to Embodiment 1;

FIG. 7 is a diagram depicting an example of a method of presenting acandidate in a presentation frame according to Embodiment 1;

FIG. 8 is a flow chart of retrieving a model candidate according toEmbodiment 1;

FIG. 9 is a flow chart of determining a model according to Embodiment 1;and

FIG. 10 is a diagram depicting an overview of a production supportsystem according to Embodiment 3.

DESCRIPTION OF THE EMBODIMENTS

Embodiments of the present disclosure will be described with referenceto the drawings. The following description is merely an example ofembodiments of the present disclosure, and is not intended to limit thepresent disclosure. The present disclosure can be implemented in variousways within the scope of the technical spirit thereof.

The present embodiment is a production support system to support theproduction of a product by a user. The production support system,according to the present embodiment, superimposes and displays a modelimage of the product that the user is about to create on the realityimage, so as to support the production by the user. The product may be atwo-dimensional image (e.g. illustration) drawn on paper, a white board,or a display, or may be a three-dimensional molded object that isproduced by processing such material as wood, clay or ice.

The production support system includes a display (display apparatus), acamera (imaging apparatus), an input/output device, and a computer(display control apparatus) that controls display on the display unit.

FIG. 1 is a diagram depicting an example of a hardware configuration ofa computer included in the production support system 100. The productionsupport system 100 of the present embodiment has the same configurationas a standard computer, and includes a CPU 101, a ROM 102, a RAM 103 andan I/F 104. These composing elements are connected via a bus 105. Theproduction support system 100 is implemented by loading a computerprogram for implementing the functions to be described below from acomputer-readable medium to the RAM 103 and the CPU 101 executing thecomputer program. The RAM 103 is also used as a work memory totemporarily store data for the processing executed by the CPU 101. TheI/F 104 is an interface to communicate with an external device, wherebyimage data of the real world and data to determine the state of the userare inputted, and image data to be displayed is outputted.

In FIG. 1 , only one CPU is indicated, but the image processingapparatus may he implemented using a plurality of processors. The CPUmay include an auxiliary configuration, such as a graphic processingunit (GPU). Further, only the RAM 103 is indicated as a configuration tohold a temporary work memory, but a second or third storage region maybe disposed in a same or different medium. The other possible media area hard disk (HDD), a solid-state drive (SSD) and the like. Theconfiguration of the bus 105 is not limited to this, but may be amulti-stage configuration in which composing elements are connected.

FIG. 2 is a diagram depicting an example of a software logicconfiguration of the production support system 100. This software logicconfiguration is common to all the embodiments.

In user data 221, information on the at tributes of the user, operationhistory of the past thereof, and the like, is stored. In model data 222,a plurality of models to support production by the user are stored. Thedata format of the model data 222 is not especially limited, and may betwo-dimensional data or three-dimensional data.

In model data 222, a model retrieval unit 213 retrieves one or aplurality of models, which are candidates of the model to besuperimposed and displayed on the reality image to support production.For example, the model retrieval unit 213 executes retrieval beforestarting the production in accordance with the attribute information ofthe user registered by the user, or input information on what will beproduced. A model candidate 223 indicates one or a plurality of modelsselected by the model retrieval unit 213.

A characteristic point detection unit 211 acquires a reality imagecapturing a. field-of-view of the user from the imaging unit 201, anddetects the characteristic points of the product that the user is toproduce. The characteristic point detection unit 211 may be implementedusing a conventional technique such as SIFT and HOG.

A model orientation adjustment unit 212 adjusts the orientation of themodel registered in model candidates 223, so that the orientation of themodel matches with the detected characteristic points. Specifically, themodel orientation adjustment unit 212 performs at least one ofpositioning, rotation and scaling of the model, so as to adjust theorientation of the model in various ways, and specify the orientationthat matches with the detected characteristic points to the highestdegree. The adjustment method of the orientation is not especiallylimited. For example, the model orientation adjustment unit 212 maydetermine the adjustment method based on the detected characteristicpoints and the orientation of the model, or may adjust a plurality oforientations of the model using a predetermined method, and select anadjustment method with which the orientation of the model matches withthe detected characteristic points to the highest degree. Further, themodel orientation adjustment unit 212 may determine the adjustmentmethod using a model learned by machine learning. The specifiedorientation is stored in the model candidates 223 as an orientation whenthe model is superimposed on the reality image. If there are a pluralityof adjustment methods for the orientation to match one model with thedetected characteristic points, each of the models after the adjustmentmay be stored in the model candidates 223.

A model superimposing unit 214 generates an image by superimposing amodel candidate 223, of which orientation has been adjusted, on areality image captured by the imaging unit 201. The model superimposingunit 214 uses orientation information determined by the modelorientation adjustment unit 212 when the model candidate 223 issuperimposed on the reality image.

A display screen generation unit 215 generates a screen which is todisplay the image generated by the model superimposing unit 214 as themodel candidate presentation image, and outputs the screen to thedisplay unit 202. The model superimposing unit 214 and the displayscreen generation unit 215 can be regarded as a display control unit tocontrol the display on the display unit 202.

A model selection unit 216 sets a mode, which the user selected from thepresented models using the operation unit 203, in the model candidates223 as a model to be continuously displayed in the superimposed state.

Hereafter the model orientation adjustment unit 212 and the modelsuperimposing unit 214 perform the orientation adjustment of the modeland the superimposing processing on the reality image only for theselected model. Further, the display screen generation unit 215generates a screen to continuously display the image, which wasgenerated by the model superimposing unit 214, on the entirefield-of-view of the HMD as the final image, and outputs the screen tothe display unit 202. The user data 221 and the model data 222 describedin the present logic configuration may be a configuration to store dataon an external storage device via a network.

FIG. 3 is an example of a table of user data stored in the user data221. “ID” indicates an ID unique to each user. “User Name” indicates aname to identify each user. The user name may be an actual name or anaccount name represented by a mail address or the like. “Attribute”indicates attribute information to classify the user. The attribute mayinclude such an attribute as gender, age and occupation. “History”indicates information on the model data which the user used in the past.The history may be only data which was used recently, or may be a listof data which was used during a predetermined period in the past.

FIG. 4 is an example of a table of the model data stored in the modeldata 222. As indicated in FIG. 4 , the model data is stored in thestorage unit, and is corresponded with the ID, thumbnail, attribute andstart position.

“ID” indicates an ID uniquely assigned to each model data.

“Model” indicates the content of the model data. The data format of themodel data is not especially limited. For example, in the case ofsupporting a two-dimensional production, such as drawing anillustration, the model may be two-dimensional data, or may bethree-dimensional data. In the case of supporting three-dimensionalproduction, such as making a plastic model, using three-dimensional datais preferable but two-dimensional data may be used instead. Thus thedata format of the model may be determined in accordance with theintended use.

“Thumbnail” indicates a snap shot image of the model in an arbitraryorientation. For example, in the case where a model is displayed in thepresentation frame, the thumbnail is displayed at a corner of thepresentation flame so as to easily identify the model that is in use.The data format of the thumbnail may be determined in accordance withthe intended use.

“Attribute” indicates attribute information to classify the model. Theattribute information may include secondary category classification,such as “type” which indicates the characteristic of the model itselfand “scene” which indicates the case where the model can be used.

“Start position” indicates the start position when the model is drawn.Based on the assumption that the model data is drawn in atwo-dimensional drawing region having a specific size, the startposition is indicated by coordinates when the upper left is the startpoint, the abscissa is the x axis and the ordinate is the y axis. Thestart position is used to determine the position of the model that issuperimposed on the drawing by the user, in accordance with the positionwhere the user placed the pen. One start position may be defined foreach model, or a plurality (e.g. two or four) of start positions may bedefined. In the case where two start positions are defined, the drawingregion may be divided into two (left and right), so that the coordinateinformation to be used is selected depending on the region (upper leftor upper right) where drawing started. In the case where four startpositions are defined, the drawing region may be divided into 2×2regions, so that the coordinate information to be used is selecteddepending on the region (upper left, upper right, lower left or lowerright) where drawing started. The specific way of using the “startposition” will be described in Embodiment 3.

FIG. 5 is an example of a table of the model data, which is stored inthe model candidates 223. “ID” indicates an ID unique to each modelcandidate. “Model” indicates an ID unique to each data of the modelincluded in the table of the model data. “Orientation” indicates anorientation when the model matches with the current characteristicpoints. The orientation data is constituted of the position, rotationand scaling. The position indicates a moving distance of the model fromthe initial coordinates for each component of the (x, y, z) axis. Therotation indicates a moving distance of the model from the initialposition for each component of the (x, y, z) axis. The scaling indicatesthe magnification of the scaling of the model with respect to theinitial size for each component of the (x, y, z) axis. If there is noorientation that matches with the characteristic points, nothing isindicated, “Selecting” indicates that this model is a final model thatis continuously displayed on the entire field-of-view of the HMD.

Embodiment 1

FIG. 6 is a diagram depicting an example of a screen which theproduction support system according to the present embodiment displayson the HMD worn by the user.

A screen 601 indicates a screen that is displayed on the entirefield-of-view of the HMD. On the screen 601, an image of a reality spaceand an image generated by the production support system 100 aresuperimposed and displayed. In FIG. 6 , paper, a pen and a line drawn onthe paper compose the image of the reality space, and a model image 604is superimposed on this image of the reality space. This model imagewhich is superimposed and displayed on the actual product is called a“support image” in the following description.

The presentation frames 602 and 603 are presentation frames in which acandidate of the model is superimposed and displayed. An image displayin the presentation frame 602 or 603 is called a “presentation image”.In Embodiment 1, the user registers that a “dog” is drawn in theproduction system in advance. Then only the model data having attributeinformation of “dog” is selected as candidates of the model. On the,screen 601, an image of the hand of the user is displayed. When the userstarts drawing, the system detects the characteristic points of thedrawing result from the image, and select models matching with thecharacteristic points by adjusting the orientation (positioning,rotation, scaling), out of the models of “dog”. The models which wereselected are superimposed on the reality image so as to match with thecharacteristic points, and is displayed in the presentation frames 602and 603. In this example, two models are displayed, but three or moremodels may be displayed. In a case where a plurality of candidatesbecome presentation targets, the presentation sequence is in thedescending order of the degree of matching., and in a case where ahigher number of models than the number of presentation frames becomethe presentation targets, new candidates of the model may besuccessively displayed by such a user operation as a gesture. If theuser selects a model to be continuously displayed in the superimposedstate, out of the presented model images, the model image 604 isdisplayed on the screen 601 in the superimposed state on the realityimage. Hereafter the selected model image is continuously displayed inthe orientation following up the characteristic points of the drawingresult.

The model data in the present embodiment may be two-dimensional data, ormay be three-dimensional data. For the images displayed in thepresentation frames, same models, of which coordinates of characteristicpoints are partially the same but orientations are different, may behandled as the same presentation candidates. In this case, asillustrated in FIG. 7 , the orientation of the model can be freelychanged by the gesture of the user, while maintaining part of thecoordinates of the characteristic points.

FIG. 8 is a flow chart of the initial setting according to Embodiment 1.The processing in FIG. 8 is performed as the initial setting before theuser starts actual production.

In step S801, the production support system 100 registers the user databased on the input from the user. In Embodiment 1, the productionsupport system 100 receives the specification of the type of the productto be produced from the user, and registers the received type of theproduct as the user data 221. For example, in a case where the userwants to draw a picture of a “dog”, “dog” is registered in the user data221 as a type of product to be produced.

Step S802 is a processing step performed by the model retrieval unit213, where data to become model candidates is retrieved from the entiremodel data. In the case where the type of the product has beenspecified, the model retrieval unit 213 selects models, of whichattributes are matched with the type specified in the model data 222,are selected as the model candidates.

For example, in the case where it is registered that a picture of a“dog” will be drawn, the model retrieval unit 213 selects a model, ofwhich attribute is “dog”, from the model data, as the model candidate.

FIG. 9 is a flow chart depicting steps up to determining the modelaccording to Embodiment 1.

In step S901, the characteristic point detection unit 211 detectscharacteristic points from the drawing result of the product captured asthe field-of-view image of the user.

In step S902, for the model data selected as the model candidate, themodel orientation adjustment unit 212 adjusts the orientation of themodel so as to match with the characteristic points detected in stepS901. The result of the calculated orientation is reflected in theorientation attribute of the model candidate.

In step S903, as model candidates, the model superimposing unit 214generates an image in order to present a plurality of models which wereselected as the model candidates to the user. Specifically, the modelsuperimposing unit 214 adjusts the orientation of the model data withreference to the orientation attribute reflected in each modelcandidate, and generates an image where the model after adjusting theorientation is superimposed on the reality image.

In step S904, the display screen generation unit 215 generates thepresentation screen to display the image generated in step S903 in thepresentation frame.

In step S905, when the user selected a model to be displayed as thesupport image, out of the model candidates presented in step S904, themodel selection unit 216 registers this model in the system as thesupport image.

In step S906, for the model of the support image which was set in stepS905, the display screen generation unit 215 generates a screen fordisplaying the superimposed image generated by the model superimposingunit 214 on the display unit.

Hereafter, detection of the characteristic points by the characteristicpoint detection unit 211, adjustment of the model orientation by themodel orientation adjustment unit 212 and superimposing of the model bythe model superimposing unit 214 are continued for the model which theuser selected in step S905, although this continuation is not includedin the flow chart.

According to Embodiment 1, only by specifying a type of product thatwill be produced, an appropriate model can be selected, superimposed anddisplayed on the reality image, whereby the user can receive the supportof the production. A model is selected based on the pre-specified typeand the characteristic points of the product the user actually produced,hence an appropriate model is selected without the user specifying aspecific model in advance. Further, the orientation of the model isadjusted so as to match with the characteristic points of the product,hence the model can follow the actual production. Furthermore, fourcorners of the drawing region are not used to determine the orientationof the model, hence the model can continuously displayed, following theactual production, even if the sight of the four corners of the drawingregion is lost.

Embodiment 2

In Embodiment 1, the user specifies a type of product to be produced,but in Embodiment 2, a model is selected without specifying the type ofproduct. Specifically in Embodiment 2, a model is selected based on theattribute information of the user.

The screen displayed by the production support system 100 is the same asEmbodiment 1 (FIG. 6 ). In Embodiment 2, in step S801 in the initialprocessing (FIG. 8 ), the user registers the attribute information ofthe user in the production system in advance as the user data 221. Instep S802, the model retrieval unit 213 selects models matching with theuser attribute as model candidates. For example, in a case where“elementary school student” is included in the attributes of the user,models having “education” as a related attribute of a model areselected. The correlation of the attributes of the user and theattributes of the models may be determined in advance, for example. Thesequence of the models to be presented in the presentation frames 902and 903 may be a sequence in which the degree of matching with the userattribute is also considered, in addition to the degree of matching withthe characteristic points.

In Embodiment 2 as well, effects similar to Embodiment 1 can beacquired. The model candidates may be extracted using both the type ofproduct and the user attributes, combining Embodiment 1 and Embodiment2.

Embodiment 3

In Embodiment 3, the display position of the model is determinedconsidering the start position of the drawing by the user.

FIG. 10 is a diagram depicting an example of a screen displayed by theproduction support system according to the present embodiment. Thescreen 1001 indicates a screen which is displayed on the entirefield-of-view of the HMD. The presentation frames 1002 and 1003 arepresentation frames that indicate candidates of the model to besuperimposed and displayed. In Embodiment 3, it is assumed that the userhas determined a model to be used for drawing in advance.

In Embodiment 3, the system detects the start position of the drawing bythe user (position where the pen is placed as a characteristic point.The system matches the display position of the model with the detectedstart position of the drawing with reference to the attributeinformation of the start position of the model, and superimposes anddisplays the model image. Specifically, the model orientation adjustmentunit 212 adjusts so that the start position included in the model data(see FIG. 4 ) matches with the start position of the drawing by theuser. The orientation of the model other than the position (that is,rotation and scaling) may be determined as required. For example, therotation may be set as an orientation when the user selected the model.The scaling may be a maximum size with which an arbitrary margin can bemaintained with respect to the drawing region, or may be a sizedetermined in advance.

In Embodiment 3, the start position of the image may be determineddepending on the specific region of the drawing region in which theposition where the pen is placed. As mentioned above, a plurality ofdrawing start positions may he corresponded to the model data 222, andstored in this state. For example, in the model data 222, the drawingregion may be divided into two (left and right), and the start positionmay be defined as the region where the drawing was started. In thiscase, the model orientation adjustment unit 212 uses a start positionwhich corresponds to the specific region of the drawing region where theuser started. For example, in the case where the user placed the pen onthe upper left of the drawing region, the upper left coordinates of thestart position (FIG. 4 ) are used. In the case where the user placed thepen at the upper right thereof, the upper right coordinates of the startposition (FIG. 4 ) are used. Cases of the lower left and lower right areregarded in the same manner.

Hereafter, the model orientation adjustment unit 212 adjusts theorientation of the model so that the model follows the drawing 1w theuser in accordance with the start position of the drawing.

According to Embodiment 3, the drawing position of the model can bedetermined in accordance with the start position of the drawing by theuser, hence the model can be continuously displayed, following thedrawing, even if the sight of the four corners of the drawing region islost.

In the above description, it is assumed that the model has beendetermined in advance, but the model may be selected in accordance withthe start position of the drawing. Selection of the model based on thestart position of the drawing may be performed based on the model datawhich is registered in advance, or may be performed based on the historyof the user in the past (correlation between the drawing start positionand type of product). In the case where a plurality of candidates areselected, the presentation frames 1001 and 1002 may be presented justlike Embodiment 1, so that the user can select the candidate to be used.Then the step of specifying the model in advance can be omitted.

Embodiment 4

In Embodiment 4, three-dimensional production is supported. InEmbodiment 4, as characteristic points, the system detects thecharacteristic points of a two-dimensional image capturing athree-dimensional product. The characteristic points of a product whichthe user carved by such processing as cutting are detected, and a matchwith the specific orientation of the model is determinedtwo-dimensionally, and is superimposed. The logic when the model issuperimposed is the same as the case of two-dimensional processing,hence description here is omitted.

Other Embodiments

Embodiments 1 to 4 are merely examples, and configurations that areacquired by, appropriately modifying or changing the configurations ofEmbodiments 1 to 4 within the scope of the spirit of the presentdisclosure are also included in the present disclosure.

The present disclosure may be implemented as a head mount display whichincludes a display and a camera, or may be implemented using asmartphone which is worn on the head of the user like goggles. Thepresent disclosure may be implemented as a computer (display controlapparatus) to which at least one of a display and a camera is connectedexternally, or as a computer program that causes the computer tofunction as a display control apparatus.

The present disclosure may be regarded as a method for producing aproduct using the production support system. In other words, the presentdisclosure may be regarded as a producing method including: a step ofconfirming a model displayed by the product support system (displaycontrol apparatus); and a step of drawing an image or processing amaterial based on the displayed model. By producing a product whilereceiving support of the production support system like this, the usercan easily produce a product by following the model.

The present disclosure may also be implemented as a processing, where aprogram, which implements at least one function of the aboveembodiments, is supplied to the system or the apparatus via a network ora storage medium, and the system or at least one processor of thecomputer of the apparatus reads and executes the program. The presentdisclosure may also be implemented as a circuit (e.g. ASIC) whichimplements at least one of the above mentioned functions. Embodiment(s)of the present invention can also be realized by a computer of a systemor apparatus that reads out and executes computer executableinstructions (e.g., one or more programs) recorded on a storage medium(which may also be referred to more fully as a ‘non-transitorycomputer-readable storage medium’) to perform the functions of one ormore of the above-described embodiments) and/or that includes one ormore circuits (e.g., application specific integrated circuit (ASIC)) forperforming the functions of one or more of the above-describedembodiment(s), and by a method performed by the computer of the systemor apparatus by, for example, reading out and executing the computerexecutable instructions from the storage medium to perform the functionsof one or more of the above-described embodiment(s) and/or controllingthe one or more circuits to perform the functions of one or more of theabove-described embodiment(s). The computer may comprise one or moreprocessors (e.g., central processing unit (CPU), micro processing unit(MPU)) and may include a network of separate computers or separateprocessors to read out and execute the computer executable instructions.The computer executable instructions may be provided to the computer,for example, from a network or the storage medium. The storage mediummay include, for example, one or more of a hard disk, a random-accessmemory (RAM), a read only memory (ROM), a storage of distributedcomputing systems, an optical disk (such as a compact disc (CD), digitalversatile disc (DVD), or Blu-ray Disc (BD)™), a flash memory device, amemory card, and the like.

While the present invention has been described with reference toexemplary embodiments, it is to be understood that the invention is notlimited to the disclosed exemplary embodiments. The scope of thefollowing claims is to be accorded the broadest interpretation so as toencompass all such modifications and equivalent structures andfunctions.

This application claims the benefit of Japanese Patent Application No.2021-162642, filed on Oct. 1, 2021, which is hereby incorporated byreference herein in its entirety.

According to the present disclosure, the production in the reality spacecan he effectively supported.

What is claimed is:
 1. A display control apparatus comprising at leastone memory and at least one processor which function as: a detectionunit configured to detect characteristic points of a product that a.user is to produce, from a reality image; an orientation adjustment unitconfigured to adjust orientation of a model so as to match with thedetected characteristic points; and. a control unit configured todisplay an image generated by superimposing the model, of whichorientation has been adjusted, on the reality image.
 2. The displaycontrol apparatus according to claim 1, said at least one memory and atleast one processor further function as a retrieval unit configured toretrieve a model to be superimposed and displayed on a reality image,from a plurality of model data stored in a storage unit.
 3. The displaycontrol apparatus according to claim 2, wherein the model data is storedin the storage unit in association with an attribute; and wherein theretrieval unit is further configured to retrieve a model that matcheswith an attribute of the model specified by the user.
 4. The displaycontrol apparatus according to claim 2, wherein the model data is storedin the storage unit in association with an attribute, and wherein theretrieval unit is further configured to retrieve a model having anattribute that matches with the attribute of the user.
 5. The displaycontrol apparatus according to claim 2, wherein the control unit isfurther configured to generate images to be presented to the user usinga plurality of models retrieve by the retrieval unit as candidates ofthe model, and determine a candidate of the model selected by the useras the model to be superimposed on the reality image.
 6. The displaycontrol apparatus according to claim 2, wherein the orientationadjustment unit is further configured to adjust the orientation of themodel by performing at least one of rotation, movement and scaling onthe model.
 7. The display control apparatus according to claim 6,wherein in a case where a plurality of methods of adjusting theorientation to match with the detected characteristic points exist forone model data, the control unit is further configured to generate ascreen to present each adjusted model data as a candidate of the modelto the user.
 8. The display control apparatus according to claim 2,wherein the model data is stored in the storage unit in association witha start position of drawing as the attribute, wherein the detected unitis further configured to detect a start position of production by theuser, and wherein the orientation adjustment unit is further configuredto adjust the orientation of the model so that the start position of theproduction by the user matches with the start position of the drawingstored as an attribute of the model data.
 9. The display controlapparatus according to claim 8, wherein the model data is stored in thestorage unit in association with a plurality of start positions of thedrawing, and wherein the orientation adjustment unit is furtherconfigured to select any one of the starting positions of the drawing inaccordance with the attribute information of the user or a startposition of the production by the user, and adjust the orientation ofthe model so that the start position of the production by the usermatches with the selected start position of the drawing.
 10. The displaycontrol apparatus according to claim 1, wherein the reality image is animage capturing the field-of-view of the user.
 11. The display controlapparatus according to claim 1 further comprising: an imaging unitconfigured to acquire the reality image; and a display unit configuredto display an image generated by the control unit.
 12. The displaycontrol apparatus according to claim 1, wherein the product is atwo-dimensional product.
 13. The display control apparatus according toclaim 1, wherein the product is a three-dimensional product.
 14. Acontrol method performed by a computer, comprising: a characteristicpoint detection step of detecting characteristic points of a productthat a user is to produce, from a reality image; an orientationadjustment step of adjusting orientation of a model so as to match withthe detected characteristic points; and a display screen generation stepof generating an image by superimposing the model, of which orientationhas been adjusted, on the reality image.
 15. A computer-readable mediumstoring a computer program to cause a computer to function as each unitof the display control apparatus according to claim
 1. 16. A producingmethod for a product, comprising: a step of confirming a model using thedisplay control apparatus according to claim 1; and a step of drawing animage or processing a material based on the model.